package org.lee.domain.service.logic;

import org.lee.domain.model.vo.TreeNodeLink;

import java.util.List;
import java.util.Map;

/**
 * LogicFilter
 * 业务过滤器
 * @author dralee
 * @date 2021-11-22 14:11:53
 **/
public interface ILogicFilter {

    /**
     * 逻辑决策器
     * @author dralee
     * @date 2021/11/22 14:45
     * @param matterValue: 决策值
	 * @param treeNodeLinkList: 决策节点
     * @return long 下一节点id
    **/
    long filter(String matterValue, List<TreeNodeLink> treeNodeLinkList);

    /**
     * 获取决策值
     * @author dralee
     * @date 2021/11/22 14:46
     * @param treeId: 树id
	 * @param userId: 用户id
	 * @param decisionMatter: 决策物料
     * @return java.lang.String 决策值
    **/
    String matterValue(long treeId, String userId, Map<String, String> decisionMatter);
}
